/**
 * 
 */
package csc.daonjpa.java.domain;

import java.io.Serializable;

import javax.persistence.Column;
import javax.persistence.DiscriminatorColumn;
import javax.persistence.DiscriminatorType;
import javax.persistence.Entity;
import javax.persistence.Id;
import javax.persistence.Inheritance;
import javax.persistence.InheritanceType;

/**
 * @author angelkid
 *
 */
@Entity
@Inheritance(strategy=InheritanceType.SINGLE_TABLE)
@DiscriminatorColumn(name="infoType", discriminatorType=DiscriminatorType.STRING)
public abstract class BaseInfo implements Serializable {
	
	/**
	 * 
	 */
	private static final long serialVersionUID = 5481778093717727848L;
	@Id
	@Column(name = "number")
	private Long number;
	
	@Column(name = "availableAmount")
	private Long availableAmount;
	
	@Column(updatable=false, insertable=false, name="infoType")
	private String infoType;
	
	public BaseInfo(){
		
	}
	
	
	public BaseInfo(Long number) {
		super();
		this.number = number;
	}

	public final Long getNumber() {
		return number;
	}
	public final void setNumber(Long number) {
		this.number = number;
	}
	public final Long getAvailableAmount() {
		return availableAmount;
	}
	public final void setAvailableAmount(Long availableAmount) {
		this.availableAmount = availableAmount;
	}

	public final String getInfoType() {
		return infoType;
	}

	public final void setInfoType(String infoType) {
		this.infoType = infoType;
	}
	
	
}
